module.exports = class goodDao extends require('../model/goodModel') {
    // 查询商品数据
    static async findGood(req, res) {
        try {
            const list = await this.findGoodByCon(req);
            res.status(200).send({ status: 1, message: 'ok', data: list });
        } catch (error) {
            console.error(error);
            res.status(500).send({ status: 0, message: '未找到该商品！' });
        }
    }
    // 根据ID查询商品数据
    // static async findGoodById(req, res, id) {
    //     try {
    //         const list = await this.findGoodByCon({ query: { id } });
    //         if (list.length > 0) {
    //             res.status(200).send({ status: 1, message: 'ok', data: list[0] });
    //         } else {
    //             res.status(404).send({ status: 0, message: '未找到该商品！' });
    //         }
    //     } catch (error) {
    //         console.error('Error finding good by ID:', error);
    //         res.status(500).send({ status: 0, message: '查询失败！' });
    //     }
    // }

    // 添加商品数据
    static async addGood(req, res) {
        try {
            await this.addGoodList(req, res);
            res.send({ status: 1, message: 'ok' });
        } catch (error) {
            console.error(error);
            res.status(500).send({ status: 0, message: '新增失败！' });
        }
    }

    // 修改商品数据
    static async updateGood(req, res) {
        try {
            await this.updateGoodList(req, res);
            res.send({ status: 1, message: 'ok' });
        } catch (error) {
            console.error(error);
            res.status(500).send({ status: 0, message: '修改失败！' });
        }
    }
    // 删除分类数据
    static async deleteGood(req, res) {
        try {
            await this.deleteGoodList(req, res);
            res.send({ status: 1, message: '删除成功！' });
        } catch (error) {
            console.error(error);
            res.status(500).send({ status: 0, message: '删除失败！' });
        }
    }
    //禁用商品
    static async goodrDisableDao(req, res) {
        await this.disableGood(req, res).then((r) => {
            //请求成功，res的反应
            res.send({ stauts: 1, message: 'ok', successMessage: "操作成功" })
        }).catch((e) => {
            //请求失败，res的反应
            res.send({ status: 0, message: 'error', errorMessage: "操作失败" })
        })
    }

    // 新增图片
    static async addImg(req, res) {
        try {
            await this.addGoodImg(req, res);
            res.send({ status: 1, message: 'ok' });
        } catch (error) {
            console.error(error);
            res.status(500).send({ status: 0, message: '新增失败！' });
        }
    }

    // 查询分类及其对应的商品信息
    static async getCategoryWithGoods(req, res) {
        try {
            const list = await this.getCategoryWithGoodsByCon(req);
            res.status(200).send({ status: 1, message: 'ok', data: list });
        } catch (error) {
            console.error(error);
            res.status(500).send({ status: 0, message: '未找到该分类信息！' });
        }
    }


}